接下來的程式都會用colab 來執行程式,如果要在其他環境執行,請自行修改哦
載入gemini
#pip install -q -U google-generativeai
import google.generativeai as genai
API 金鑰
from google.colab import userdata
API_KEY=userdata.get('GOOGLE_API_KEY')
#genai.configure(api_key="YOUR_API_KEY")
# Configure the client library by providing your API key.
genai.configure(api_key=API_KEY)
Gemini API 可根據各種輸入內容類型產生文字輸出內容,包括 像是文字、圖片、影片和音訊在各種情境中 應用程式,其中包括:
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("寫一個故事,描述參加鐵人賽連續安技術文章30天")
print(response.text)
使用圖片的話,圖片我是放google drive,所以需要授權
from google.colab import drive
drive.mount('/content/drive')
下載圖片到google drive,圖片位置給 gemini
from keras.preprocessing import image
import urllib.request
import PIL.Image
from pathlib import Path
# from PIL import Image
image_url = "https://www.kpopmonster.jp/wp-content/uploads/2022/11/twice01-2.jpg.webp"
# Download the image using urllib
urllib.request.urlretrieve(image_url, "girls.png")
image_parts = [
{
"mime_type": "image/png",
"data": Path("girls.png").read_bytes()
},
]
prompt_parts = [
"請用中文回答,如果給你一張圖,請你辨識出上面的人名嗎\n",
image_parts[0],
"\n",
]
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content(prompt_parts)
print(response.text)
model = genai.GenerativeModel("gemini-1.5-flash")
response = model.generate_content("寫一個故事,描述參加鐵人賽連續寫技術文章30天", stream=True)
for chunk in response:
print(chunk.text)
print("_" * 80)
model = genai.GenerativeModel("gemini-1.5-flash")
chat = model.start_chat(
history=[
{"role": "user", "parts": "你好"},
{"role": "model", "parts": "很高興認識你。您想知道什麼?"},
]
)
response = chat.send_message("我家裡有 4 隻貓。")
print(response.text)
response = chat.send_message("我家裡有幾隻爪子?")
print(response.text)
哇!四隻貓真是太棒了!能告訴我更多關於它們的事情嗎?它們是什麼品種?他們的個性如何?你最喜歡它們的什麼地方?
哈哈,這是一個有趣的問題!如果你有四隻貓,每隻貓有四隻腳,總共就有 16 個爪子!
其他的輸出結果就太長不貼上來了,samle code 放在github,有興趣的可以執行在colab哦
https://github.com/kevin6449/ironman2024_genai/tree/main